#include "ArcLru.hpp"
#include "ArcLfu.hpp"
#include "ArcCache.hpp"

int main()
{
    //Kama::ArcLru<int, int> cache(10, 3);
    //Kama::ArcLfu<int, int> cache(10, 3);
    Kama::ArcCache<int, int> cache(10, 3);
    cache.put(1, 1);
    cache.put(2, 2);
    cache.put(3, 3);
    cache.put(2, 8);

    std::cout << "value: " << cache.get(1) << std::endl;
    std::cout << "value: " << cache.get(2) << std::endl;
    std::cout << "value: " << cache.get(3) << std::endl;
    
    return 0;
}